(function ($) {
    $.fn.extend({
        toJSON: function () {
            var arr = this.serializeArray();
            var json = {};
            for(var key in arr){
                json[arr[key].name] = arr[key].value;
            }
            return json;
        },
        toJSONString: function () {
            var json = this.toJSON();
            return JSON.stringify(json);
        },
        toMultiJSON: function () {
            //form表单有多个name相同的字段
            var arr = this.serializeArray();
            var json = {};
            for(var key in arr){
                if(json[arr[key].name] != null){
                    json[arr[key].name] = json[arr[key].name] + "," +  arr[key].value;
                }else {
                    json[arr[key].name] = arr[key].value;
                }
            }
            return json;
        },
        toMultiJSONString: function () {
            //form表单有多个name相同的字段
            var json = this.toMultiJSON();
            return JSON.stringify(json);
        },
        toExcludeJSON: function (excludeKey) {
            //form表单中去掉不需要提交的字段
            var arr = this.serializeArray();
            var json = {};
            for(var key in arr){
                if(arr[key].name != excludeKey){
                    json[arr[key].name] = arr[key].value;
                }
            }
            return json;
        },
        toExcludeJSONString: function (excludeKey) {
            //form表单中去掉不需要提交的字段
            var json = this.toExcludeJSON(excludeKey);
            return JSON.stringify(json);
        }
    });
})(jQuery);

//采用正则表达式获取地址栏参数
function getUrlParam(name){
    var reg = new RegExp("(^|&)"+ name +"=([^&]*)(&|$)");
    var r = window.location.search.substr(1).match(reg);
    if(r!=null)
        return  unescape(r[2]);
    return null;
}

//判断str是否是json格式
function isJSON(str) {
    if (typeof str == 'string') {
        try {
            JSON.parse(str);
            return true;
        } catch(e) {
            console.log(e);
            return false;
        }
    }
    console.log('It is not a string!')
}
